package tables

var AmsPluginSource = struct {
	Miao, Win, Linux string
}{
	Miao:  "miao",
	Win:   "win",
	Linux: "linux",
}

type AmsPlugin struct {
	Id          int64  `json:"id,string" gorm:"primaryKey"`
	Name        string `json:"name"`        // 名称，例如 miao
	Description string `json:"description"` // 描述信息
	Source      string `json:"source"`      // 来源，可选：miao、win、linux

	DownloadUrl  string `json:"downloadUrl"` // 下载地址
	UnTarget     string `json:"unTarget"`    // 文件释放路径，如果为空就是不需要释放的文件，例如win系统自带的文件
	Version      string `json:"version"`
	Md5          string `json:"md5"`          // 主程序的MD5
	ZipMd5       string `json:"zipMd5"`       // 压缩包的MD5
	CheckVersion bool   `json:"checkVersion"` // 是否需要检查版本
	CheckMd5     bool   `json:"checkMd5"`     // 是否需要检查md5
	IsRequired   bool   `json:"isRequired"`   // 是否为必须插件
	CreatedAt    int64  `json:"createdAt,string"`
}

func (r *AmsPlugin) TableName() string {
	return "ams_plugin"
}
